<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        #container {
            display: grid;
            grid-template-columns: 100px 100px 100px;
            grid-template-rows: 100px 100px 100px;
        }

        .item {
            font-size: 4em;
            text-align: center;
            border: 1px solid #e5e4e9;
        }

        /* .item-1 {
            background-color: #ef342a;
            grid-column-start: 2;
            grid-column-end: 4;
        } */

        /* .item-1 {
            background-color: #ef342a;
            grid-column-start: 1;
            grid-column-end: 3;
            grid-row-start: 2;
            grid-row-end: 4;
        } */

        .item-1 {
            background-color: #ef342a;
            grid-column-start: span 2;
            /* 上面代码表示，1号项目的左边框距离右边框跨越2个网格。 */
        }

        .item-2 {
            background-color: #f68f26;
        }

        .item-3 {
            background-color: #4ba946;
        }

        .item-4 {
            background-color: #0376c2;
        }

        .item-5 {
            background-color: #c077af;
        }

        .item-6 {
            background-color: #f8d29d;
        }

        .item-7 {
            background-color: #b5a87f;
        }

        .item-8 {
            background-color: #d0e4a9;
            /* 项目属性：第四行第二列 */
            /* grid-row-start: 4;
            grid-column-start: 2; */
        }

        .item-9 {
            background-color: #4dc7ec;
            /* 项目属性：第五行第三列 */
            /* grid-row-start: 5;
            grid-column-start: 3; */
        }
    </style>
</head>

<body>
    <p>项目的位置是可以指定的，具体方法就是指定项目的四个边框，分别定位在哪根网格线。</p>

    <p>grid-column-start属性：左边框所在的垂直网格线</p>

    <p>grid-column-end属性：右边框所在的垂直网格线</p>

    <p>grid-row-start属性：上边框所在的水平网格线</p>

    <p>grid-row-end属性：下边框所在的水平网格线</p>

    <p>grid-column属性是grid-column-start和grid-column-end的合并简写形式</p>

    <p>grid-row属性是grid-row-start属性和grid-row-end的合并简写形式。</p>

    <p>grid-column: start-line> / end-line>;</p>

    <p>grid-row: start-line> / end-line>;</p>

    <!-- 
    .item-1 {
        grid-column: 1 / 3;
        grid-row: 1 / 2;

        上面代码中，项目item-1占据第一行，从第一根列线到第三根列线。
        这两个属性之中，也可以使用span关键字，表示跨越多少个网格.

} -->
    <div id="container">
        <div class="item item-1">1</div>
        <div class="item item-2">2</div>
        <div class="item item-3">3</div>
        <div class="item item-4">4</div>
        <div class="item item-5">5</div>
        <div class="item item-6">6</div>
        <div class="item item-7">7</div>
        <div class="item item-8">8</div>
        <div class="item item-9">9</div>
    </div>
</body>

</html>